package model

import (
	"time"
)

// Rule WAF规则模型
type Rule struct {
	ID          int64     `gorm:"column:id;primaryKey;autoIncrement" json:"id"`
	Type        string    `gorm:"column:type;size:50;not null" json:"type"`        // 规则类型
	Pattern     string    `gorm:"column:pattern;size:255;not null" json:"pattern"` // 规则模式
	Description string    `gorm:"column:description;size:255" json:"description"`  // 规则描述
	Status      int       `gorm:"column:status;not null;default:1" json:"status"`  // 规则状态：1-启用，0-禁用
	AddDate     time.Time `gorm:"column:add_date;autoCreateTime" json:"addDate"`   // 创建时间
	LastDate    time.Time `gorm:"column:last_date;autoUpdateTime" json:"lastDate"` // 更新时间
}

// TableName 指定表名
func (Rule) TableName() string {
	return "waf_rule"
}
